package com.niit.session20;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class StudentDao1 {
	public static void main(String[] args) {
		Connection conn = JDBCUtils.getConn();
		try {
//			结果集的类型，默认是只能向前滚动和只读的，可以在createStatement方法中修改结果集的类型
			Statement statement = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
			ResultSet rs = statement.executeQuery("SELECT * FROM student where batch = 3;");
//			在调用next()方法之前，无法获取结果集里的数据
//			System.out.println(rs.getString("sid")+"---"+rs.getString("name"));
//			next()方法让游标向后移动一位，移动之后返回是否还有下一行的布尔值
			boolean next = rs.next();
			System.out.println("是否还有下一行："+next);
			System.out.println(rs.getString("sid")+"---"+rs.getString("name")+"---"+rs.getInt("group_leader"));
			System.out.println("游标是否在第一个位置："+rs.isFirst());
			System.out.println("游标是否在最后一个位置："+rs.isLast());
			rs.absolute(8);
//			getXXX用来获取游标当前指向的行的数据，参数可以是数据的列明，也可以是一个下标，推荐使用列明
//			要根据数据中数据的字面量来决定使用getInt,还是getString还是getLong
			System.out.println(rs.getLong("sid")+"---"+rs.getString("name")+"---"+rs.getInt("group_leader"));
			while (rs.next()) {
				System.out.println(rs.getString("sid")+"---"+rs.getString("name"));
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

}
